The present invention relates to telephony and more particularly, to telephony over heterogeneous networks such as cable systems.
Recently, great interest has been shown in the area of cable telephony. With the recent introduction of cable modems, cable operators have shown great interest in technology that will allow them to provide telephone services along with television and data services. If successful, such operators could offer customers (users) one data pipe that will handle data, video and voice. Investigation of the possibilities of cable telephony has begun, with much of the work in this area being performed by Cable Television Laboratories, Inc. (CableLabs). This work by CableLabs has resulted in a proposed specification (PacketCable) for Internet based voice and video products over cable systems. PacketCable has focused on Internet Protocol (IP) based telephony which interfaces with the existing Public Switch Telephone Network (PSTN) via conventional Signaling System 7 (SS7) based gateways. While the IP based telephony approach may be very flexible, it is a new and immature technology. It may take time to develop the rich set of telephony features that are currently offered by Class 5 telephony switches.
FIG. 1 illustrates the IP telephony architecture generally corresponding to that proposed by PacketCable. In the PacketCable 1.0 architecture, calls are typically controlled by a central Call Agent (CA) 170. The Media Terminal Adapter (MTA) 110 uses a Data Over Cable Service Interface Specification (DOCSIS) Cable Modem 120 to communicate with the CA 170 over the cable network 130 and the IP network 150 through the Cable Modem Termination System (CMTS) 140. While illustrated as two separate blocks in FIG. 1, the MTA 110 and the cable modem (CM) 120 may be a single device. Thus, the MTA 110 and the CM 120 may be a single cable modem with a telephony application which controls a standard telephone set 100.
The MTA 110 is typically controlled by the CA 170 using a protocol known as Network based Call Signaling (NCS) which has been defined by PacketCable. The Cable Telephony Gateway (CTG) 160 interfaces the cable plant to the PSTN 180 using SS7. Voice is digitized and carried as IP packets between the MTA 110 and CTG 160. The MTA 110 converts between analog voice and IP packetized voice while the CTG 160 converts between IP packetized voice and standard 64 kbps PCM for the PSTN.
When the MTA 110 powers up, it typically communicates with the CA 170 which instructs the MTA 110 to look for an off-hook condition. In a typical outbound call, the user picks up the phone 100 connected to the MTA 110, or goes xe2x80x9coff-hook.xe2x80x9d The MTA 110 sends a NOTIFY message to the CA 170 to indicate the off-hook condition. If capacity is available on the cable system, the CA 170 typically instructs the MTA 110 to provide a dial tone and collect dialed digits. When dialing is complete, the MTA 110 sends the dialed digits to the CA 170 via the NOTIFY command. The CA 170 generally verifies that the user is allowed to place the call and then notifies the CTG 160 of the number the caller wishes to dial. The CTG 160 communicates with the PSTN 180 using SS7 which is a message based protocol. That is, the CTG 160 typically tells the PSTN 180 the desired number to dial in a digital message. If the PSTN 180 accepts the call, the CA 170 generally sets up an IP connection between the MTA 110 and the CTG 160. Voice is carried in data packets over the IP network and may be sent as continuous Pulse Code Modulation (PCM) data between the CTG 160 and PSTN 180. If the caller has the feature Caller ID with call waiting and someone else attempts to call the original caller, the CTG 160 receives a SS7 message from the PSTN 180 that indicates an incoming call including the caller""s ID. The CTG 160 notifies the CA 170 which then directs the MTA 110 to signal to the original caller that a call is incoming and to display the caller ID.
As is seen from the above example, in the PacketCable type system, the CA 170 generally controls all aspects of the call. The MTA 170 follows the instructions provided by the CA 170. Furthermore, the use of SS7 signaling to interface to the PSTN 180 provides call information in a digital message format that the CA 170 can typically easily interpret to provide instructions to the MTA 110.
While the PacketCable type system may provide a mechanism for providing basic telephony functions over a cable plant, some cable system operators may be unwilling to wait for the IP telephony technology to evolve and mature. These operators may have access to Class 5 switches, and may want to leverage this investment to deploy mature cable telephony as soon as possible. Therefore, a hybrid architecture has emerged which uses the Class 5 switch to control phone calls while the cable plant is used as the xe2x80x9clast milexe2x80x9d connection to customers. However, merging cable telephony with the existing Class 5 switches is typically not straight forward because the two approaches have very different paradigms.
Typically, standard analog phone lines are connected directly to a Class 5 switch, so that the switch controls all aspects of the call. The switch detects off-hook, provides a dial tone and or ringing and handles advanced features like call waiting or caller ID. The switch typically controls the phone using in-band signaling such as dial tone and dual tone multi-frequency (DTMF) and electric currents and voltages to signal on-hook and off-hook as well as power ringing. As analog lines are generally limited to approximately 3 miles, remote data terminals (RDT) may be used to expand the reach of the switch. Such a system is illustrated in FIG. 2.
As seen in FIG. 2, the RDT 210 attaches to the analog telephones 200 and 200xe2x80x2 and communicates with the Class 5 switch 220, and, therefore, the PSTN 230, via a T1 or higher order digital link. The T1 can transfer in-band signals like DTMF, because these signals are typically sampled and pulse code modulation (PCM) encoded just like voice. However, the T1 generally cannot directly include the currents and voltages needed for hook detection and ringing. Therefore, ABCD signaling is typically used to convey this information. ABCD bits are part of the Enhanced Super Frame format used on T1s. Low order bits are xe2x80x9crobbedxe2x80x9d from the PCM stream to convey the extra ABCD information. The RDT 210 may convert ABCD bits to voltages and currents and vice versa. The RDT 210 is generally a slave to the switch, notifying the switch of events on the analog line or responding to commands from the switch, such as power ringing.
Initial attempts to merge the Class 5 switch and cable telephony produced the architecture illustrated in FIG. 3. In this approach the RDT is replaced by the Cable Telephony Gateway (CTG) 300 and the analog telephone lines are replaced by an IP network 150 and a cable plant 130, 140 of a cable system. The CA 310 and switch 220 both try to control the call. The switch 220 generally thinks it is talking to a regular RDT and it attempts to control the call using in-band signaling and ABCD bits. The CTG 300 does not receive formatted SS7 messages as in the PacketCable system described above, so it typically must interpret the in-band signaling and ABCD bits and convert them to NCS messages for the CA 310. The CA 310 then may attempt to control the MTA 110. This approach may fail, however, because of the tight timing requirements of the switch 220. The latency added by interpreting in-band signals and coordinating with the CA 310 may cause many Custom Local Area Signaling Services (CLASS) features, such as Caller ID and Call Waiting, to fail.
One particular challenge for cable telephony systems using in-band control architectures, such as those described above with reference to FIG. 3, is supporting delivery of emergency call services. In particular, such systems typically provide for notification from the MTA 110 to the call agent 310 when a phone is picked up to generate an off-hook signal. If enough bandwidth for the call is available in the cable system (for example, through the GR-303 interface), the call agent 310 typically sets up a Digital Signal Level 0 (DS0) with the switch on the GR-303 interface and sets up a Real Time Transport Protocol (RTP) connection with the media terminal adapter (MTA). Once these two connections are complete, the MTA may be controlled by the switch 220. The switch 220 may then provide a dial tone, collect dial digits, etc.
A problem with such systems may occur when dialing an emergency number, such as 911, when the cable system is busy. Typically, a set amount of bandwidth on the cable network 130 is allocated for phone calls using cable telephony and the remainder may be allocated to other data services. If the cable telephony allocated bandwidth is completely consumed (i.e., fully utilized), new requests for phone calls are typically denied by the call agent 310 and the customer receives a xe2x80x9cfast busyxe2x80x9d signal on the telephone 100 to indicate that the system is temporarily full. The customer, thus, would not receive a dial tone and has no way to advise the switch 220 that the desired service request is for an emergency call. In contrast, if a customer""s telephone 100 were connected to the switch 220 via an analog telephone line, the customer would typically always receive a dial tone and could dial 911. The switch 220 could then give the call a priority and connect it to the proper authorities.
Systems and methods are provided in embodiments of the present invention for providing emergency services on a heterogeneous network comprising a public switched telephone network (PSTN) and a packet based network to a local user, the packet based network to a local user having a finite bandwidth for telephony services. The packet based network may be a cable system. A request for telephony service is received wherein the telephony service will be provided over the packet based network. It is determined if a portion of the bandwidth of the packet based network which is allocated to telephony is fully utilized and if the request for telephony service is a request for emergency service. A portion of the bandwidth of the packet based network is obtained to provide the requested telephony service if the request for telephony service is a request for emergency service and the portion of the bandwidth of the packet based network which is allocated to telephony is fully utilized. The requested emergency service is provided using the obtained portion of the bandwidth of the packet based network to the local user. The heterogeneous network may be a cable system.
In other embodiments of the present invention, the bandwidth is obtained by allocating an alternate portion of the bandwidth of the cable system which is not allocated to telephony to the requested telephony service if the request for telephony service is a request for emergency service and the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized. The cable system may be a cable telephony system having an in-band control architecture, the telephony service may be a voice call service and the emergency service may be an emergency call. The request for telephony service may be received from a user station. The user station may be a media terminal adapter. The allocated alternate portion of the bandwidth may be a portion of the bandwidth of the cable system associated with data services on the cable system.
In further embodiments of the present invention, the determination of whether the request for telephony service is a request for emergency service includes providing a dial tone to a user regardless of whether the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized, receiving a number associated with the requested voice call service from the user station and determining if the received number is an emergency call number. The emergency call number may be 911.
In other embodiments of the present invention, the requested emergency service is provided by transmitting the received number from the user station to a telephone switch and then providing the emergency service using the allocated alternate portion of the bandwidth of the cable system to support communications between the user station and the telephone switch. A connection may be established between the user station and the telephone switch using the allocated alternate portion of the bandwidth of the cable system and the received number may be transmitted from the user station to a telephone switch using the established connection. Communication of the received number to a user of the user station may be suppressed while transmitting the received number from the user station to a telephone switch.
In further embodiments of the present invention, methods are provided for providing emergency call service on a cable telephony system having an in-band control architecture. An off-hook signal from a user is detected. A service request is transmitted to the cable telephony system responsive to the detected off-hook condition. A request to provide a dial tone to the user is received from the cable telephony system responsive to the transmitted service request. A dial tone is provided to the user responsive to the request to provide a dial tone. A number associated with the emergency call service is received from the user and provided to the cable telephony system. An allocation of a portion of the bandwidth of the cable telephony system which is not allocated to telephony is received from the cable telephony system and the received number is transmitted to a telephone switch using the received allocation of a portion of the bandwidth of the cable telephony system to initiate the emergency call service. A number not associated with the emergency call service may also be received from a user. The received number not associated with the emergency call service may be provided to the cable telephony system and a denial of service received from the cable telephony system. A denial of service indication may be provided to the user responsive to the received denial of service.
In other embodiments of the present invention, the portion of the bandwidth of the cable system is obtained by preempting a part of the portion of the bandwidth of the cable system which is allocated to telephony if the request for telephony service is a request for emergency service and the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized. The pre-empting may be provided by terminating at least one call which is utilizing the portion of the bandwidth of the cable system which is allocated to telephony or by reducing a bandwidth allocated to at least one such call.
In further embodiments of the present invention, methods are provided for providing emergency call service on a cable telephony system having an in-band control architecture. A service request is received from a user station. It is determined if a portion of the bandwidth of a cable system which is allocated to the cable telephony system is fully utilized. A request to provide a dial tone is transmitted to the user station responsive to the received service request regardless of whether the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized. A number associated with the service request is received from the user station. It is determined if the received number is an emergency call number associated with the emergency call service. A portion of the bandwidth of the cable system which is not allocated to the cable telephony is allocated to the service request if the received number is an emergency call number associated with the emergency call service and the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized. A connection is established between the user station and a telephone switch using the allocated portion of the bandwidth of the cable system. A request is transmitted to the user station requesting transmission of the received number to the telephone switch using the allocated portion of the bandwidth of the cable system. A request is transmitted to provide a system busy signal, such as a fast busy signal, to the user station if the received number is not an emergency call number associated with the emergency call service and the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized. The cable telephony system may be GR-303 based and the connection may be established by setting up Internet Protocol (IP) and GR-303 connections.
In other embodiments of the present invention, the user station is a media terminal adapter and the media terminal adapter detects an off-hook condition from a user and transmits a notify message to the cable telephony system as the service request. The media terminal adapter receives the request to provide a dial tone, provides a dial tone to the user responsive to the received request to provide a dial tone and then receives dual tone multi-frequency (DTMF) digits from the user and provides the received DTMF digits to the cable telephony system as the number associated with the service request. In addition, the media terminal adapter receives the request to provide a busy signal to the user and provides a system busy signal to the user responsive to the received request to provide a busy signal to the user.
In further embodiments of the present invention, methods are provided for providing emergency call service on a cable telephony system having an in-band control architecture. A service request is received from a user station. It is determined if a portion of the bandwidth of a cable system which is allocated to the cable telephony system is fully utilized. A request to provide a dial tone is transmitted to the user station responsive to the received service request regardless of whether the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized. A number associated with the service request is received from the user station. It is determined if the received number is an emergency call number associated with the emergency call service. A part of the portion of the bandwidth of the cable system which is allocated to telephony is pre-empted if the received number is an emergency call number associated with the emergency call service and the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized. A connection is established between the user station and a telephone switch using the preempted part of the portion of the bandwidth of the cable system. A request is transmitted to the user station requesting transmission of the received number to the telephone switch using the pre-empted part of the portion of the bandwidth of the cable system. A request is transmitted to provide a system busy signal to the user station if the received number is not an emergency call number associated with the emergency call service and the portion of the bandwidth of the cable system which is allocated to the cable telephony system is fully utilized.
In further embodiments of the present invention, call agents are provided for a cable system having a bandwidth. The call agent includes a media terminal adapter (MTA) control circuit that receives in-band control signals from a MTA and provides in-band control signals to the MTA. The control signals from the MTA include a request for telephony service and an associated service identifier. The MTA control circuit is configured to determine if a received request for telephony service is a request for emergency service based on the associated service identifier. A bandwidth control circuit determines if a portion of the bandwidth of the cable system which is allocated to telephony is fully utilized. A call setup circuit obtains a portion of the bandwidth of the cable system to provide the requested telephony service if the request for telephony service is a request for emergency service and the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized. The call setup circuit is configured to establish a connection between the MTA and a telephone switch to support the requested emergency service using the obtained portion of the bandwidth of the cable system.
In other embodiments of the present invention, the call setup circuit is configured to allocate an alternate portion of the bandwidth of the cable system which is not allocated to telephony to the requested telephony service if the request for telephony service is a request for emergency service and the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized. In alternative embodiments, the call setup circuit is configured to pre-empt a part of the portion of the bandwidth of the cable system which is allocated to telephony if the request for telephony service is a request for emergency service and the portion of the bandwidth of the cable system which is allocated to telephony is fully utilized.
While the present invention has been described above in part with reference to method aspects, corresponding systems and call agents are also provided.